package com.fjw.mapper;

import com.fjw.pojo.Store;
import com.fjw.pojo.User;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface StoreMapper {
    /**
     * 查询所有店铺信息
     * @return 店铺列表
     */
    @Select("SELECT * FROM store")
    List<Store>getAll();
    /**
     * 新增店铺信息
     * @param store 店铺实体
     */
    @Insert("INSERT INTO store (sname, address, aname, beizhu) VALUES (#{sname}, #{address}, #{aname}, #{beizhu})")
    void add(Store store);
    /**
     * 通过ID查询店铺信息
     * @param id 店铺ID
     * @return 店铺实体
     */
    @Select("SELECT * FROM store WHERE id = #{id}")
    Store findById(Integer id);
    /**
     * 通过ID更新店铺信息
     * @param store 店铺实体
     */
    @Update("UPDATE store SET sname = #{sname}, address = #{address}, aname = #{aname}, beizhu = #{beizhu} WHERE id = #{id}")
    void updateById(Store store);
    /**
     * 通过ID删除店铺信息
     * @param id 店铺ID
     */
    @Delete("DELETE FROM store WHERE id = #{id}")
    void deleteById(Integer id);
    /**
     * 查询权限为管理员的用户列表
     * @return 用户列表
     */
    @Select("SELECT * FROM User WHERE role = '管理员'")
    List<User> getAdminUsers();
}